package service;

import java.util.List;

import models.Programa;

public class ProgramaService {

	/**
	 * 查询所有栏目信息的方法
	 * 
	 * @return    集合
	 */
	public static List<Programa> findAll(){
		return Programa.findAll();
	}
	
	/**
	 * 按id查询相关栏目信息的方法
	 * 
	 * @param id   栏目id
	 * @return     栏目对象
	 */
	public static Programa findById(Long id){
		return Programa.findById(id);
	}
	
	/**
	 * 查询顶级栏目的方法
	 * 
	 * @return   集合
	 */
	public static List<Programa> findTop(){
		return Programa.find("pro.id=null").fetch();
	}
	
	/**
	 * 查询相关栏目的子栏目的方法
	 * 
	 * @param id  父栏目id
	 * @return    集合
	 */
	public static List<Programa> findByProId(Long id){
		return Programa.find("pro.id=?", id).fetch();
	}
	
	/**
	 * 栏目的添加方法
	 * 
	 * @param programa  栏目对象
	 */
	public static void add(Programa programa){
		if(programa.pro == null){
			programa.create();
		}else{
			if(programa.pro.proPath == null){
				programa.proPath = programa.pro.id.toString();
				programa.create();
			}else{
				programa.proPath = programa.pro.proPath+","+programa.pro.id;
				programa.create();
			}
		}
	}
	
	/**
	 * 栏目的修改方法
	 * 
	 * @param programa  栏目对象
	 */
	public static void update(Programa programa){
		programa.save();
	}
	
	/**
	 * 栏目的删除方法
	 * 
	 * @param id 栏目id
	 */
	public static void delete(Long id){
		Programa.findById(id)._delete();
	}
}
